package com.lesama.test;

/*
* 内存调用情况：
* 1.子类的构造函数入栈，先在内存中给子类对象开辟空间，发现需要调用父类的构造函数进行初始化
* 2.父类的构造函数入栈，进行父类成员的初始化
* 3.父类的构造函数执行完毕，出栈，继续执行子类的构造函数，进行子类成员的初始化
* 4.最后子类构造函数执行完毕，对象创建成功
* */

public class Student extends Person {
    private int score;

    public Student(int score) {
        this.score = score;
    }

    public Student(String name, int age, int score) {
        super(name, age);
        this.score = score;
    }

    public void study() {
        System.out.println("姓名为" + super.getName() +"，年龄为" + super.getAge() + "成绩为" + score + "的学生在学习");
    }
}
